package com.matt.service;

import com.matt.controller.po.ChildMemberPo;
import com.matt.domain.Leads;
import com.matt.foundation.query.LeadsQuery;
import com.matt.foundation.vo.LeadsVo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;
import java.text.ParseException;
import java.util.List;
import java.util.Map;

/**
 * *******************************
 * Created by Ron.
 * form com.matt
 * on 2018/6/13
 * *******************************
 */
public interface LeadsService {

    LeadsVo save(Leads leads, String ticket);

    LeadsVo save1(Leads leads, String ticket);

    LeadsVo save(Leads leads, String areaId,String ticket);

    Leads saveToNoneOne(Leads leads, String source);

    Leads findById(String leadsId, String areaId);

    int deleteByIdInArea(String leadsId, String ticket, String areaId);

    Page<Leads> findPage(LeadsQuery leadsQuery, Pageable pageable);

    Leads updateLeadsStaffInfo(String ticket, String staffId, String staffName, String leadsId);

    boolean checkFollowById(String leadsId);

    Map importExcel(String ticket, MultipartFile multipartFile) throws IOException, ParseException;

    Leads updateById(Leads leads,String ticket);

    Leads updateStatusById(String ticket,String zhwysStatus, String leadsId);

    Object updatePennyById(String ticket, Leads leads);

    Object updateStatusByLeads(String ticket, ChildMemberPo po);

    List<Map<String, Object>> getAllArea();

    Object updateLeadsStaffInfo1(String ticket, String staffId, String staffName, List<String> leadsId);

    Object deleteByIdInArea1(List<String> leadsId, String ticket, String areaId);
}
